package com.aidex.business.domain;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import lombok.Data;
import com.aidex.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.aidex.common.utils.log.annotation.FieldRemark;
import com.aidex.common.utils.log.annotation.LogField;
import com.aidex.common.annotation.Excel;

/**
 * 系统参数表对象 sys_params
 * @author cq
 * @email 382425530@qq.com
 * @date 2023-06-20
 */
@Data
public class SysParams extends BaseEntity<SysParams>
{
    private static final long serialVersionUID = 1L;

    /** 参数名称 */
    @Excel(name = "参数名称")
    @NotBlank(message = "参数名称不允许为空")
    @LogField
    @FieldRemark(name = "参数名称",field = "paramName")
    private String paramName;

    /** 参数类型 */
    @Excel(name = "参数类型", dictType = "goods_type")
    @NotBlank(message = "参数类型不允许为空")
    @LogField
    @FieldRemark(name = "参数类型",field = "paramType")
    private String paramType;

    /** 参数值 */
    @LogField
    @FieldRemark(name = "参数值",field = "paramValue")
    private String paramValue;

    /** 最大值 */
    @LogField
    @FieldRemark(name = "最大值",field = "paramMax")
    private String paramMax;

    /** 最小值 */
    @LogField
    @FieldRemark(name = "最小值",field = "paramMin")
    private String paramMin;

    /** 状态 */
    @Excel(name = "状态", dictType = "sys_is_valid")
    @NotBlank(message = "状态不允许为空")
    @LogField
    @FieldRemark(name = "状态",field = "state")
    private String state;

    public void setParamName(String paramName) 
    {
        this.paramName = paramName;
    }

    public String getParamName() 
    {
        return paramName;
    }

    public void setParamType(String paramType) 
    {
        this.paramType = paramType;
    }

    public String getParamType() 
    {
        return paramType;
    }

    public void setParamValue(String paramValue) 
    {
        this.paramValue = paramValue;
    }

    public String getParamValue() 
    {
        return paramValue;
    }

    public void setParamMax(String paramMax) 
    {
        this.paramMax = paramMax;
    }

    public String getParamMax() 
    {
        return paramMax;
    }

    public void setParamMin(String paramMin) 
    {
        this.paramMin = paramMin;
    }

    public String getParamMin() 
    {
        return paramMin;
    }

    public void setState(String state) 
    {
        this.state = state;
    }

    public String getState() 
    {
        return state;
    }


    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("paramName", getParamName())
            .append("paramType", getParamType())
            .append("paramValue", getParamValue())
            .append("paramMax", getParamMax())
            .append("paramMin", getParamMin())
            .append("state", getState())
            .append("remark", getRemark())
            .append("id", getId())
            .append("createBy", getCreateBy())
            .append("createDept", getCreateDept())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("updateIp", getUpdateIp())
            .append("version", getVersion())
            .append("delFlag", getDelFlag())
            .toString();
    }
}
